import 'dart:io';

import 'package:demo_app_video/commons/router/routes.dart';
import 'package:flutter/material.dart';
import 'csj.dart';
import 'commons/sp.dart';
import 'store/user.dart';
import 'package:uuid/uuid.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';

import 'package:flutter/gestures.dart';

class SplashPage extends StatefulWidget {
  const SplashPage({Key? key}) : super(key: key);

  @override
  State<SplashPage> createState() => _SplashPageState();
}

class _SplashPageState extends State<SplashPage> {
  @override
  void initState() {
    // TODO: implement initState
    super.initState();

    WidgetsBinding.instance.endOfFrame.then(
      (value) {
        if (mounted) {
          Future.delayed(Duration(seconds: 2), () async {
            await init();
          });
        }
      },
    );
  }

  //同意设置缓存
  agree() async {
    init();
  }

  checkHasConfirm() async {
    //查询缓存

    showDialog(
        context: context,
        barrierDismissible: false,
        builder: (BuildContext context) {
          return AlertDialog(
            title: Text("用户须知"),
            contentPadding: EdgeInsets.fromLTRB(20, 10, 20, 10),
            content: PopScope(
              child: Container(
                child: Column(
                  mainAxisSize: MainAxisSize.min,
                  children: [
                    Container(
                      child: SingleChildScrollView(
                        child: Column(
                          children: [
                            RichText(
                              text: TextSpan(
                                style: TextStyle(
                                  fontSize: 15,
                                  color: Color(0xff555555),
                                ),
                                children: <InlineSpan>[
                                  TextSpan(text: '1.您可以查看完整版'),
                                  TextSpan(
                                    text: '《用户协议》',
                                    style: TextStyle(color: Colors.red),
                                    recognizer: TapGestureRecognizer()
                                      ..onTap = () {
                                        const url =
                                            'https://hpg.rongqide.cn/article/用户协议.html';
                                        Routes().push(context, Routes.webview,
                                            {'url_text': url});
                                        return;
                                      },
                                  ),
                                  TextSpan(text: '和'),
                                  TextSpan(
                                    text: '《隐私政策》',
                                    style: TextStyle(color: Colors.red),
                                    recognizer: TapGestureRecognizer()
                                      ..onTap = () async {
                                        const url =
                                            'https://hpg.rongqide.cn/article/隐私政策.html';
                                        Routes().push(context, Routes.webview,
                                            {'url_text': url});
                                        return;

                                        // Navigator.push(context,
                                        //     MaterialPageRoute(builder: (context) {
                                        //       return WebPage(
                                        //         title: '隐私政策',
                                        //         webUrl: NetConfig.privacyPolicyUrl,
                                        //       );
                                        //     }));
                                      },
                                  ),
                                  TextSpan(
                                      text:
                                          '。以便于了解我们收集、使用、共享、存储信息的情况，以及对信息的保护措施'),
                                ],
                              ),
                            ),
                            Text(
                              '2、为实现服务安全及保证服务稳定，我们可能需要收集设备信息(AndroidID、DHCP、IMEI、Mac地址、手机序列号设备唯一识别码、系统版本、网络类型)、日志信息及其他必要信息;当您注册、登录时，我们将收集您的手机号或第三方账号(微信/QQ/抖音/Apple ID)信息;我们仅会根据产品或服务的的具体功能要求、收集必要的用户信息',
                              style: TextStyle(
                                fontSize: 15,
                                color: Color(0xff555555),
                              ),
                            ),
                            Text(
                              '3、为满足为您提供服务的必要，我们需要向我们的关联公司、供应商、合作伙伴及其他第三方以委托或共享的方式提供您的部分信息。',
                              style: TextStyle(
                                fontSize: 15,
                                color: Color(0xff555555),
                              ),
                            ),
                          ],
                        ),
                      ),
                    ),
                    Padding(
                      padding: EdgeInsets.fromLTRB(10, 20, 10, 20),
                      child: Row(
                        children: [
                          Expanded(
                            child: GestureDetector(
                              onTap: () async {
                                Sp().setSp(Sp.agree_text, '1');
                                agree();
                                await Routes().popNowPage(context);
                              },
                              child: Container(
                                alignment: Alignment.center,
                                padding: EdgeInsets.fromLTRB(0, 14, 0, 14),
                                decoration: new BoxDecoration(
                                  color: Color(0xffFF0000),
                                  borderRadius:
                                      new BorderRadius.circular((10.0)),
                                ),
                                child: Text(
                                  "同意并继续",
                                  style: TextStyle(
                                    color: Color(0xffFFFFFF),
                                  ),
                                ),
                              ),
                            ),
                          ),
                        ],
                      ),
                    ),
                    InkWell(
                      child: Container(
                        alignment: Alignment.center,
                        child: Text(
                          "拒绝并退出",
                          style: TextStyle(
                            color: Color(0xff999999),
                          ),
                        ),
                      ),
                      onTap: () => exit(0),
                    ),
                  ],
                ),
              ),
              canPop: false,
            ),
          );
        });

    // showDialog(
    //     context: context,
    //     builder: (BuildContext context) {
    //       return StatefulBuilder(
    //         builder: (context, state) {
    //           print('cccc');
    //           return Material(
    //             color: Colors.transparent,
    //             child: Container(
    //               color: Colors.transparent,
    //               child: Column(
    //                 mainAxisAlignment: MainAxisAlignment.center,
    //                 children: [
    //                   Container(
    //                     width: 260,
    //                     height: 430,
    //                     decoration: BoxDecoration(
    //                       borderRadius: BorderRadius.circular(16),
    //                       color: Colors.white,
    //                     ),
    //                     child: Column(
    //                       crossAxisAlignment: CrossAxisAlignment.center,
    //                       children: [
    //                         Text(
    //                           '用户协议和隐私协议',
    //                           style: TextStyle(
    //                               color: Color.fromRGBO(51, 51, 51, 1),
    //                               fontWeight: FontWeight.w500,
    //                               fontSize: 16),
    //                         ),
    //                         Container(
    //                           width: 240,
    //                           alignment: Alignment.centerLeft,
    //                           child: Text(
    //                             '欢迎使用:',
    //                             style: TextStyle(
    //                                 color: Color(0xff333333), fontSize: 14),
    //                           ),
    //                         ),
    //                         Container(
    //                           width: 240,
    //                           child: RichText(
    //                               text: TextSpan(
    //                                   text: '1、您可以查看完整版',
    //                                   style: TextStyle(
    //                                       color: Color(0xff333333),
    //                                       fontSize: 14),
    //                                   children: [
    //                                 TextSpan(
    //                                     text: '《用户协议》',
    //                                     style: TextStyle(color: Colors.red),
    //                                     recognizer: TapGestureRecognizer()
    //                                       ..onTap = () {
    //                                         Routes().push(
    //                                             context, Routes.webview, {
    //                                           'url_text':
    //                                               'https://hpg.rongqide.cn/article/用户协议tml'
    //                                         });
    //                                       }),
    //                                 TextSpan(text: '和'),
    //                                 TextSpan(
    //                                     text: '《隐私政策》',
    //                                     style: TextStyle(color: Colors.red),
    //                                     recognizer: TapGestureRecognizer()
    //                                       ..onTap = () {
    //                                         Routes().push(
    //                                             context, Routes.webview, {
    //                                           'url_text':
    //                                               'https://hpg.rongqide.cn/article/隐私政策tml'
    //                                         });
    //                                       }),
    //                                 TextSpan(
    //                                     text:
    //                                         '以便于了解我们收集、使用、共享、存储信息的情况，以及对信息的保护措施。')
    //                               ])),
    //                         ),
    //                         Container(
    //                           margin: EdgeInsets.only(top: 4),
    //                           width: 240,
    //                           alignment: Alignment.centerLeft,
    //                           child: Text(
    //                             '2、为实现服务安全及保证服务稳定，我们可能需要收集设备信息(AndroidID、DHCP、IME1、Mac地址、手机序列号设备唯一识别码、系统版本、网络类型)、日志信息及其他必要信息;当您注册、登录时，我们将收集您的手机号或第三方账号(微信/QQ/抖音/Apple ID)信息;我们仅会根据产品或服务的的具体功能要求、收集必要的用户信息。',
    //                             style: TextStyle(
    //                                 color: Color(0xff333333), fontSize: 12),
    //                           ),
    //                         ),
    //                         Container(
    //                           width: 240,
    //                           margin: EdgeInsets.only(top: 4),
    //                           alignment: Alignment.centerLeft,
    //                           child: Text(
    //                             '3、为满足为您提供服务的必要，我们需要向我们的关联公司、供应商、合作伙伴及其他第三方以委托或共享的方式提供您的部分信息。',
    //                             style: TextStyle(
    //                                 color: Color(0xff333333), fontSize: 12),
    //                           ),
    //                         ),
    //                         Container(
    //                           margin: EdgeInsets.only(top: 30),
    //                           width: 260,
    //                           height: 1,
    //                           color: Color.fromRGBO(0, 0, 0, .1),
    //                         ),
    //                         Expanded(
    //                             child: Container(
    //                           child: Row(
    //                             children: [
    //                               Expanded(
    //                                   child: InkResponse(
    //                                 onTap: () {
    //                                   exit(1);
    //                                 },
    //                                 radius: 0,
    //                                 splashColor: Colors.transparent,
    //                                 child: Container(
    //                                   alignment: Alignment.center,
    //                                   child: Text(
    //                                     '拒绝',
    //                                     style: TextStyle(
    //                                         color: Color(0xff333333),
    //                                         fontSize: 12),
    //                                   ),
    //                                 ),
    //                               )),
    //                               Expanded(
    //                                   child: InkResponse(
    //                                 onTap: () async {
    //                                   Sp().setSp(Sp.agree_text, '1');
    //                                   agree();
    //                                   await Routes().popNowPage(context);
    //                                 },
    //                                 radius: 0,
    //                                 splashColor: Colors.transparent,
    //                                 child: Container(
    //                                   alignment: Alignment.center,
    //                                   child: Text(
    //                                     '同意',
    //                                     style: TextStyle(
    //                                         color: Color(0xff333333),
    //                                         fontSize: 12),
    //                                   ),
    //                                 ),
    //                               )),
    //                             ],
    //                           ),
    //                         ))
    //                       ],
    //                     ),
    //                   ),
    //                 ],
    //               ),
    //             ),
    //           );
    //         },
    //       );
    //     });
  }

  init() async {
    var resultSpa = await Sp().getSp(Sp.agree_text);
    print(resultSpa);
    if (resultSpa == null || resultSpa == '') {
      checkHasConfirm();
      return;
    }
    await Csj().init();

    // 注册初始化fluro
    var userToken = await Sp().getSp(Sp.userKey);
    if (userToken == null) {
      userToken = '';
    }
    $UserStore.setToken(userToken);
    if (userToken != '') {
      $UserStore.setUserInfo();
    }

    var uuid = await Sp().getSp(Sp.uuid);
    if (uuid == null) {
      uuid = Uuid().v4();
      await Sp().setSp(Sp.uuid, uuid);
    }
    $UserStore.setUuid(uuid);

    var qing = await Sp().getSp(Sp.qing);
    if (qing == null) {
      await Sp().setSp(Sp.qing, '0');
    }

    var gxing = await Sp().getSp(Sp.gxing);
    if (gxing == null) {
      await Sp().setSp(Sp.gxing, '');
    }
    var gxing1 = await Sp().getSp(Sp.gxing);
    $UserStore.gexing = gxing1;

    var qing1 = await Sp().getSp(Sp.qing);
    $UserStore.setQing(qing1);

    //替换页面
    await Future.delayed(Duration(seconds: 2));

    print('========>开屏');
    Routes().pushReplacementNoParams(context, Routes.home);
  }

  @override
  Widget build(BuildContext context) {
    ScreenUtil.init(context, designSize: const Size(360, 780));
    // return Scaffold(
    //   backgroundColor: Colors.transparent,
    //   body: Center(
    //     child: Container(
    //       width: 260,
    //       height: 450,
    //       color: Colorshite,
    //       child: Column(
    //         crossAxisAlignment: CrossAxisAlignment.center,
    //         children: [
    //           Text(
    //             '用户协议和隐私协议',
    //             style: TextStyle(
    //                 color: Color.fromRGBO(51, 51, 51, 1),
    //                 fontWeight: FontWeight500,
    //                 fontSize: 16),
    //           ),
    //           Container(
    //             width: 240,
    //             alignment: Alignment.centerLeft,
    //             child: Text(
    //               '欢迎使用:',
    //               style: TextStyle(color: Color(0xff333333), fontSize: 14),
    //             ),
    //           ),
    //           Container(
    //             width: 240,
    //             child: RichText(
    //                 text: TextSpan(
    //                     text: '1、您可以查看完整版',
    //                     style: TextStyle(
    //                         color: Color(0xff333333), fontSize: 14),
    //                     children: [
    //                   TextSpan(text: '《用户协议》'),
    //                   TextSpan(text: '和'),
    //                   TextSpan(text: '《隐私政策》'),
    //                   TextSpan(text: '以便于了解我们收集、使用、共享、存储信息的情况，以及对信息的保护措施。')
    //                 ])),
    //           ),
    //           Container(
    //             margin: EdgeInsets.only(top: 4),
    //             width: 240,
    //             alignment: Alignment.centerLeft,
    //             child: Text(
    //               '2、为实现服务安全及保证服务稳定，我们可能需要收集设备信息(AndroidID、DHCP、IME1、Mac地址、手机序列号设备唯一识别码、系统版本、网络类型)、日志信息及其他必要信息;当您注册、登录时，我们将收集您的手机号或第三方账号(微信/QQ/抖音/Apple ID)信息;我们仅会根据产品或服务的的具体功能要求、收集必要的用户信息。',
    //               style: TextStyle(color: Color(0xff333333), fontSize: 12),
    //             ),
    //           ),
    //           Container(
    //             width: 240,
    //             margin: EdgeInsets.only(top: 4),
    //             alignment: Alignment.centerLeft,
    //             child: Text(
    //               '3、为满足为您提供服务的必要，我们需要向我们的关联公司、供应商、合作伙伴及其他第三方以委托或共享的方式提供您的部分信息。',
    //               style: TextStyle(color: Color(0xff333333), fontSize: 12),
    //             ),
    //           ),
    //           Container(
    //             margin: EdgeInsets.only(top: 30),
    //             width: 260,
    //             height: 1,
    //             color: Color.fromRGBO(0, 0, 0, .1),
    //           ),
    //           Expanded(
    //               child: Container(
    //             child: Row(
    //               children: [
    //                 Expanded(
    //                     child: Container(
    //                   alignment: Alignment.center,
    //                   child: Text(
    //                     '拒绝',
    //                     style: TextStyle(
    //                         color: Color(0xff333333), fontSize: 12),
    //                   ),
    //                 )),
    //                 Expanded(
    //                     child: Container(
    //                   alignment: Alignment.center,
    //                   child: Text(
    //                     '同意',
    //                     style: TextStyle(
    //                         color: Color(0xff333333), fontSize: 12),
    //                   ),
    //                 )),
    //               ],
    //             ),
    //           ))
    //         ],
    //       ),
    //     ),
    //   ),
    // );
    return Scaffold(
      body: Center(
        child: Image.asset('images/logo_login_p.png'),
      ),
    );
  }
}
